package com.qixiang.usercenter.model.entity;

import com.baomidou.mybatisplus.annotation.*;

import java.io.Serializable;
import java.util.Date;
import lombok.Data;

/**
 * 系统用户表
 * @TableName sys_user
 */
@TableName(value ="sys_user")
@Data
public class SysUser implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 用户ID
     */
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    private Long id;

    /**
     * 用户名（显示名称）
     */
    @TableField(value = "username")
    private String username;

    /**
     * 登录账号（唯一）
     */
    @TableField(value = "login_account")
    private String loginAccount;

    /**
     * 密码
     */
    @TableField(value = "password")
    private String password;

    /**
     * 性别 0-未设置 1-男 2-女 3-其他
     */
    @TableField(value = "gender")
    private Integer gender;

    /**
     * 出生日期（替代年龄字段）
     */
    @TableField(value = "birth_date")
    private Date birthDate;

    /**
     * 企业邮箱
     */
    @TableField(value = "email")
    private String email;

    /**
     * 手机号（带国际区号）
     */
    @TableField(value = "mobile")
    private String mobile;

    /**
     * 头像URL
     */
    @TableField(value = "avatar_url")
    private String avatarUrl;

    /**
     * 账号锁定状态
     */
    @TableField(value = "is_locked")
    private Integer isLocked;

    /**
     * 软删除标记
     */
    @TableLogic
    private Integer isDeleted;

    /**
     * 创建时间
     */
    @TableField(value = "created_time")
    private Date createdTime;

    /**
     * 最后修改时间
     */
    @TableField(value = "updated_time")
    private Date updatedTime;
}